/*
 * PacketParam.h
 *
 *  Created on: Sep 22, 2017
 *      Author: zjf
 */

#ifndef INCLUDE_PACKETPARAMS_H_
#define INCLUDE_PACKETPARAMS_H_

#include <Poco/Types.h>
#include "PacketReaderWriter.h"

using namespace Poco;

namespace utils
{

template<typename TPacket, typename TPacetReaderWriter>
class PacketParams
{
public:
	PacketParams(typename TPacket::Ptr& packet, TPacetReaderWriter& ss)
	: _packet(packet)
	, _ss(ss) {}
	virtual ~PacketParams() {}
	
	const typename TPacket::Ptr& getPacket() const { return _packet; }
	TPacetReaderWriter& getSocket() const { return _ss; }


private:
	typename TPacket::Ptr _packet;
	TPacetReaderWriter& _ss;
};

} /* namespace utils */

#endif /* INCLUDE_PACKETPARAMS_H_ */
